... with functions that don't use GdkVisual.
A small step towards getting rid of GdkVisual.
return NULL;
}
-GdkVisual *
-gdk_x11_display_get_window_visual (GdkX11Display *display)
+static GdkVisual *
+gdk_x11_display_get_window_gdk_visual (GdkX11Display *display)
{
GdkScreen *screen;
GdkVisual *visual;
-
+
screen = gdk_display_get_default_screen (GDK_DISPLAY (display));
visual = gdk_screen_get_rgba_visual (screen);
return visual;
}
+int
+gdk_x11_display_get_window_depth (GdkX11Display *display)
+{
+ return gdk_visual_get_depth (gdk_x11_display_get_window_gdk_visual (display));
+}
+
+Visual *
+gdk_x11_display_get_window_visual (GdkX11Display *display)
+{
+ return gdk_x11_visual_get_xvisual (gdk_x11_display_get_window_gdk_visual (display));
+}
+
+Colormap
+gdk_x11_display_get_window_colormap (GdkX11Display *display)
+{
+ return _gdk_visual_get_x11_colormap (gdk_x11_display_get_window_gdk_visual (display));
+}
+
static void
gdk_x11_display_class_init (GdkX11DisplayClass * class)
{
GLXFBConfig *configs;
int n_configs, i;
gboolean retval = FALSE;
- VisualID xvisual_id = XVisualIDFromVisual (gdk_x11_visual_get_xvisual (gdk_x11_display_get_window_visual (GDK_X11_DISPLAY (display))));
+ VisualID xvisual_id = XVisualIDFromVisual (gdk_x11_display_get_window_visual (GDK_X11_DISPLAY (display)));
i = 0;
attrs[i++] = GLX_DRAWABLE_TYPE;
GList * _gdk_x11_screen_list_visuals (GdkScreen *screen);
-GdkVisual * gdk_x11_display_get_window_visual (GdkX11Display *display);
+int gdk_x11_display_get_window_depth (GdkX11Display *display);
+Visual * gdk_x11_display_get_window_visual (GdkX11Display *display);
+Colormap gdk_x11_display_get_window_colormap (GdkX11Display *display);
void _gdk_x11_display_add_window (GdkDisplay *display,
XID *xid,
int width,
int height)
{
- GdkVisual *visual;
+ Visual *visual;
visual = gdk_x11_display_get_window_visual (GDK_X11_DISPLAY (gdk_window_get_display (impl->wrapper)));
return cairo_xlib_surface_create (GDK_WINDOW_XDISPLAY (impl->wrapper),
GDK_WINDOW_IMPL_X11 (impl)->xid,
- GDK_VISUAL_XVISUAL (visual),
+ visual,
width, height);
}
GdkWindowImplX11 *impl;
GdkX11Screen *x11_screen;
GdkX11Display *display_x11;
- GdkVisual *visual;
Window xparent;
Visual *xvisual;
xattributes_mask = 0;
- visual = gdk_x11_display_get_window_visual (display_x11);
- xvisual = gdk_x11_visual_get_xvisual (visual);
+ xvisual = gdk_x11_display_get_window_visual (display_x11);
if (attributes_mask & GDK_WA_NOREDIR)
{
xattributes.bit_gravity = NorthWestGravity;
xattributes_mask |= CWBitGravity;
- xattributes.colormap = _gdk_visual_get_x11_colormap (visual);
+ xattributes.colormap = gdk_x11_display_get_window_colormap (display_x11);
xattributes_mask |= CWColormap;
if (window->window_type == GDK_WINDOW_TEMP)
impl->override_redirect = TRUE;
}
- depth = visual->depth;
+ depth = gdk_x11_display_get_window_depth (display_x11);
}
else
{